Problem
BZOJ3676【APIO2014】回文串
Time Limit:
Memory Limit:
Description
给你一个由小写拉丁字母组成的字符串 。我们定义 的一个子串的存在值为这个子串在 中出现的次数乘以这个子串的长度。
对于给你的这个字符串 ,求所有回文子串中的最大存在值。
Input
输入只有一行,为一个只包含小写字母的非空字符串 。
Output
Sample Input
Input
1 | abacaba |
Input
1 | www |
Sample Output
Output
1 | 7 |
Output
1 | 4 |
HINT
一个串是回文的,当且仅当它从左到右读和从右到左读完全一样。
在第一个样例中,回文子串有个:,,,,,,,其中:
- a出现次,其出现值为:
- b出现次,其出现值为:
- c出现次,其出现值为:
- aba出现次,其出现值为:
- aca出现次,其出现值为:
- bacab出现次,其出现值为:
- abacaba出现次,其出现值为:
故最大回文子串出现值为。
数据规模与评分
数据满足 。
标签:回文自动机
Solution
回文自动机建出来直接统计答案。
具体回文自动机讲解参见 的博客。
Code
1 |
|